Skip to content

docs: add axi-axi to community catalog - #113

Closed
CodyEngel wants to merge 1 commit into
kunchenguid:mainfrom
CodyEngel:docs/add-axi-axi-catalog
Closed

docs: add axi-axi to community catalog#113
CodyEngel wants to merge 1 commit into
kunchenguid:mainfrom
CodyEngel:docs/add-axi-axi-catalog

Conversation

@CodyEngel

Copy link
Copy Markdown

Intent

Add the axi-axi package (https://github.com/CodyEngel/axi-axi) to the AXI community catalog so it shows up in the generated README.md and axi.md catalog tables.

What Changed

  • Added an axi-axi entry (author CodyEngel, domain "AXI authoring") to the community section of catalog.yaml, the single source for the AXI catalog.
  • Regenerated the generated:catalog-community regions of README.md and docs/index.html so the new row appears in both the README table and the axi.md site table.

Risk Assessment

✅ Low: A three-file, docs-only catalog addition that follows the documented contributor workflow exactly, with generated regions consistent with what the generator would emit and no source-verifiable defects.

Testing

I exercised the catalog change on all three surfaces it touches. The docs:check CI gate passes, meaning the committed README.md and docs/index.html tables are byte-exact regenerations of catalog.yaml; a negative test (dropping the axi-axi entry) made that same check fail on both files, proving the rows are genuinely generated from the new entry rather than hand-typed, and the worktree was left clean after restoring. I then served docs/ locally and screenshotted the real axi.md page, showing axi-axi as the final community-catalog row with the correct author, domain, description, and a link to github.com/CodyEngel/axi-axi (which returns HTTP 200). README.md has no rendered screenshot because its end-user surface is GitHub's own markdown renderer, which isn't reproducible offline without sending content to an external API; the identical catalog data is shown rendered in the axi.md screenshots, and the README row is verified through its generated table region plus the byte-exact docs:check gate. Everything passed with no issues found.

  • Evidence: axi.md community catalog — full table with axi-axi as the last row (rendered site) (local file: /var/folders/h0/hd2bmc2524z2fz14zcl1p4400000gn/T/no-mistakes-evidence/01KY8K1RATY258V0NX239V9WWG/axi-md-community-table-full.png)
  • Evidence: axi.md community catalog — close-up of the axi-axi row at full reading size (local file: /var/folders/h0/hd2bmc2524z2fz14zcl1p4400000gn/T/no-mistakes-evidence/01KY8K1RATY258V0NX239V9WWG/axi-md-community-catalog.png)
  • Evidence: axi.md catalog section — COMMUNITY heading and column headers in context (local file: /var/folders/h0/hd2bmc2524z2fz14zcl1p4400000gn/T/no-mistakes-evidence/01KY8K1RATY258V0NX239V9WWG/axi-md-catalog-full-table.png)
Evidence: docs:check gate, drift negative test, generated README row, and link reachability

$ pnpm run docs:check docs:check ok — generated regions match their sources # --- Negative test: temporarily drop the axi-axi entry from catalog.yaml --- error: README.md is out of sync with catalog.yaml/principles.yaml error: docs/index.html is out of sync with catalog.yaml/principles.yaml exit code 1 -> both tables really are generated from the catalog entry (restored afterwards; git status clean) # --- README.md community catalog table (generated region) --- | axi-axi | CodyEngel | AXI authoring | Scaffold a compliant AXI, read the 10 principles in token-tuned slices, and run read-only compliance checks against a candidate CLI. | # --- catalog link reachability --- GET https://github.com/CodyEngel/axi-axi -> HTTP 200

$ pnpm run docs:check       # the docs-check CI gate: regenerates from catalog.yaml and fails on drift
docs:check ok — generated regions match their sources

# --- Negative test: temporarily drop the axi-axi entry from catalog.yaml ---
$ node scripts/generate-docs.mjs --check   (with axi-axi removed from catalog.yaml)
error: README.md is out of sync with catalog.yaml/principles.yaml
error: docs/index.html is out of sync with catalog.yaml/principles.yaml
help: run `pnpm run docs:gen` and commit the result
exit code 1   -> both tables really are generated from the catalog entry (catalog.yaml restored afterwards; git status clean)

# --- README.md community catalog table, last rows as a reader sees them ---
| AXI                                                                                                | Author             | Domain                | What it does                                                                                                                                                 |
| -------------------------------------------------------------------------------------------------- | ------------------ | --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| [`glab-axi`](https://github.com/karotkriss/glab-axi)                                               | karotkriss         | GitLab                | Issues, merge requests, CI/CD pipelines, variables and secrets, releases, and raw API access. Wraps the official glab CLI with agent-ergonomic TOON output.  |
| [`axi-axi`](https://github.com/CodyEngel/axi-axi)                                                  | CodyEngel          | AXI authoring         | Scaffold a compliant AXI, read the 10 principles in token-tuned slices, and run read-only compliance checks against a candidate CLI.                         |


# --- catalog link reachability ---
GET https://github.com/CodyEngel/axi-axi -> HTTP 200

Pipeline

Updates from git push no-mistakes

✅ **intent** - passed

✅ No issues found.

✅ **Rebase** - passed

✅ No issues found.

⚠️ **Review** - 1 info
  • ℹ️ catalog.yaml:154 - VISION.md's catalog policy requires an independent maintainer source review of the package at an exact pinned revision or release before a positive admission verdict, and names existence checks and contributor-provided claims as insufficient evidence. This diff review verified only that the entry is well-formed, the repo exists and is public, and the catalog text matches the package's own README — that does not satisfy the policy. No change to the diff is needed; the pinned-source review is maintainer-owned.
✅ **Test** - passed

✅ No issues found.

  • pnpm install --frozen-lockfile (workspace deps for the docs generator)
  • pnpm run docs:check — the docs-check CI gate; regenerates README.md + docs/index.html regions from catalog.yaml and fails on drift (passed)
  • Negative test: temporarily removed the axi-axi entry from catalog.yaml and re-ran node scripts/generate-docs.mjs --check — failed with drift on both README.md and docs/index.html (exit 1), then restored catalog.yaml and re-ran the check (passed, git status clean)
  • pnpm run docs:test (node --test scripts/generate-docs.test.mjs) — generator escaping/link/pipe helpers
  • Manual render: served docs/ at http://127.0.0.1:8731 and loaded index.html in Chrome; asserted the rendered row cells and link href via DOM read, then captured screenshots of the community catalog table
  • curl -L https://github.com/CodyEngel/axi-axi — catalog link resolves (HTTP 200)
  • Inspected the generated generated:catalog-community region of README.md to confirm the axi-axi row is present in the committed markdown table
✅ **Document** - passed

✅ No issues found.

✅ **Lint** - passed

✅ No issues found.

✅ **Push** - passed

✅ No issues found.

Add axi-axi to the community list in catalog.yaml and regenerate
README.md and docs/index.html with pnpm run docs:gen.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@kunchenguid

Copy link
Copy Markdown
Owner

Speaking as Kun's firstmate: I reviewed the diff (catalog.yaml plus generated README.md / docs/index.html only) and independently inspected the package.

Independent source review at pin 405850d4e5c715a514f4b82b9dec5e58a38658a3 (current main HEAD; no tags). Files/paths read at that revision: package.json, bin/axi-axi.js, src/index.ts, src/cli/router.ts, src/cli/spec.ts, src/commands/setup.ts, src/commands/home.ts, src/output/toon.ts, plus the recursive tree. Direct observations at that revision:

  • custom CLI (no axi-sdk-js); stdout through a local TOON-shaped emitter (emitList / emitKV / print)
  • commands: principles list|show, checklist, checks list, new, validate, skill gen, setup hooks; generated skills/axi-axi/SKILL.md exists
  • no-args home renders the 10 principles / golden path (content-first for this domain); unknown commands fail with UsageError
  • principle 7 held with gaps: setup hooks installs a SessionStart hook for Claude Code and Codex (idempotent); default --agent is claude-code rather than all three; OpenCode is an honest no-op message, not an install
  • principle 10 partial: --version exists on the home command and prints axi-axi: <ver> (spec <spec>) after loading dist/index.js (no tryFastPath / bare-version fast path)

Catalog description (scaffold a compliant AXI, read the 10 principles, read-only compliance checks) is source-backed at this pin (new, principles, validate).

VISION.md per-rule:

  • AXI principles: aligns for a positive admission at this pin (P7 setup command exists for Claude/Codex; OpenCode and non-bare --version are observations, not admission blockers).
  • Catalog: aligns. Independent source review at 405850d4e5c715a514f4b82b9dec5e58a38658a3 supports admission.
  • SDKs: aligns (docs-only catalog add; no SDK change).

Diff is catalog-only; no security issue. Fork CI is green. The PR is CONFLICTING with main; I will resolve and land if the fork can be updated.

@kunchenguid kunchenguid left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Speaking as Kun's firstmate: catalog-only diff, no security issue. Package admitted at the inspected pin (see comment).

@kunchenguid

Copy link
Copy Markdown
Owner

Speaking as Kun's firstmate.

This catalog entry landed via last-resort port #158 (squash merge 64f61639de4655bd0efcc4fe3442f4e045c9aabb) because #113 stayed CONFLICTING on the fork and we could not fast-forward a resolve there. No rebase was requested. Closing this original as redundant now that axi-axi is on main.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants